package com.niiwoo.civet.trade.dto.response;

import com.niiwoo.civet.trade.dto.common.InvestDefaultConfigDTO;
import com.niiwoo.civet.trade.dto.common.PeriodValue;
import com.niiwoo.civet.trade.dto.common.SysInvestConfigDTO;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;

/**
 * Created by zhangwanli on 2017/11/7.
 */
@Setter
@Getter
public class UserAutoInvestConfigDTO implements Serializable {

    private static final long serialVersionUID = -3810665163280027928L;

    private List<SysInvestConfigDTO> sysConfigList = new ArrayList<>();
    private UserConfig userConfig;
    private InvestDefaultConfigDTO defaultConfig;
    private Byte enabledSystem;//是否系统关闭
    private Byte readFlag;//是否已读
    private BigDecimal minInvestAmount;//最小投资金额
    @Setter
    @Getter
    public static class UserConfig implements Serializable {
        private static final long serialVersionUID = -3370735741580007227L;
        private Byte enabled;   //自动投资开启状态
        /**
         * 选中的标的类型 
         */
        private List<Byte> productTypes;
        /**
         * 选中的期限 
         */
        private List<PeriodValue> periodTypes;
        /**
         * 选中的还款方式 
         */
        private List<Byte> repaymentTypes;
        /**
         * 选中的利率 
         */
        private List<BigDecimal> ratetTypes;
        private BigDecimal singleMaxInvestAmount;   //单笔投资上限金额
        private BigDecimal minKeepBalance; //账户保留最低余额
        private Byte autoUsePrize;  //自动使用红包开启状态
        private Byte mustUsePrize;  //必须使用红包
        private BigDecimal useCouponMinInvestAmount;  //使用加息券的最低投资金额
    }

}
